package com.agenda.model.repositories;

import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.Query;

import com.agenda.model.entities.Usuario;

public class UsuarioRepository {
	EntityManager manager;
	
	public UsuarioRepository(EntityManager manager){
		this.manager = manager;
	}
	
	public void adiciona(Usuario usuario){
		this.manager.persist(usuario);
	}
	
	public void remove(Long id){
		Usuario usuario = this.procura(id);
		this.manager.remove(usuario);		
	}
	
	public Usuario atualiza(Usuario usuario){
		return this.manager.merge(usuario);
	}
	
	public Usuario procura(Long id){
		return this.manager.find(Usuario.class, id);
	}
	
	public List<Usuario> getList() {
		Query query = this.manager.createQuery("select x from usuario x");
		return query.getResultList();
	}
}
